package com.beidouapp.service;

import java.util.List;
import java.util.Map;
import java.util.Set;

import com.beidouapp.domain.pojo.Resource;
import com.beidouapp.domain.pojo.RoleAndResource;

public interface ResourceService {

	public List<Resource> findAllResource();

	public int removeRoleAndResourceByRoleId(Long roleId);

	public int addRoleAndResourceBatch(List<RoleAndResource> list);

	public int removeRoleAndResourceBatch(Map<String, Object> params);

	// ----------------------------

	public List<Resource> findRoleResourcesByContactsLoginName(String LoginName);

	public List<Resource> findRoleResourcesByRoleId(Long roleId);

	public void grantResources(Long roleId, Set<Long> addIdList,
			Set<Long> delIdList);

	/**
	 * 查询角色有访问权限的资源.
	 *
	 * @param appShowName
	 *            应用系统简称（精确值）
	 * @param roleCode
	 *            角色编码（精确值）
	 * @return 资源集合
	 */
	public List<Resource> findResourceByAppAndRole(String appShowName,
			String roleCode);

	/**
	 * 查询应用系统用有资源.
	 *
	 * @param appShortName
	 *            应用系统简称（精确值）
	 * @return 资源集合
	 */
	public List<Resource> findResourceByApp(String appShortName);

}
